home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
t3_1
/
encore.lha
/
encore
/
tsystem
/
max_start_t.s
< prev
next >
Wrap
Text File
|
1988-03-09
|
1KB
|
43 lines
.globl big_bang
.globl the_slink
.globl _start_t
.globl interrupt_dispatcher
.globl _nlistone
.text
descriptor:
.double fake_module_table
fake_module_table:
.double the_slink # Static Base
.double 0 # Link Base
.double really_start_t # Program Base
.double 0 # (reserved by N32 for future use)
_start_t:
cxpd descriptor # so MOD will point to the fake table
really_start_t:
adjspd $-8 # pop what cxpd pushed
addr interrupt_handler,r0 # so big_bang can find interrupt_xenoid
addr big_bang,r2 # P register gets the closure
movd -2(r2),r7 # TP gets the template
jump 0(r7)
_nlistone:
interrupt_handler:
movd r7,tos
movd r6,tos
movd r5,tos
movd r4,tos
movd r3,tos
movd 24(sp),r0
movd 32(sp),r3
addr interrupt_dispatcher,r2
movd -2(r2),r7 # TP gets the template
jsr 0(r7)
movd tos,r3
movd tos,r4
movd tos,r5
movd tos,r6
movd tos,r7
ret $0